python+playwright 学习

您所在的位置:网站首页 page object models in cypressio python+playwright 学习

python+playwright 学习

2023-04-05 12:19| 来源: 网络整理| 查看: 265

from models.register_page import RegisterPagefrom playwright.sync_api import expectimport pytest

class TestRegister:

@pytest.fixture(autouse=True) def start_for_each(self, context_chrome): print("for each--start: 打开新页面访问注册页") self.page = context_chrome.new_page() self.register = RegisterPage(self.page) self.register.navigate() yield print("for each--close: 关闭注册页") self.page.close()

def test_register_1(self): """用户名为空,点注册""" self.register.fill_username('') self.register.fill_password('123456') self.register.click_register_button() # 断言 expect(self.register.locator_username_tip1).to_be_visible() expect(self.register.locator_username_tip1).to_contain_text("不能为空")

def test_register_2(self): """用户名大于30字符""" self.register.fill_username('hello world hello world hello world') # 断言 expect(self.register.locator_username_tip2).to_be_visible() expect(self.register.locator_username_tip2).to_contain_text("用户名称1-30位字符") # 断言 注册按钮不可点击 expect(self.register.locator_register_btn).not_to_be_enabled()

def test_register_3(self): """用户名有特殊字符""" self.register.fill_username('hello!@#') # 断言 expect(self.register.locator_username_tip3).to_be_visible() expect(self.register.locator_username_tip3).to_contain_text("用户名称不能有特殊字符,请用中英文数字") # 断言 注册按钮不可点击 expect(self.register.locator_register_btn).not_to_be_enabled()

def test_register_4(self): """密码框不能为空""" self.register.fill_username('hello') self.register.fill_password('') self.register.click_register_button() # 断言 expect(self.register.locator_password_tip1).to_be_visible() expect(self.register.locator_password_tip1).to_contain_text("不能为空")

@pytest.mark.parametrize('test_input', ['abc12', 'abc1234567890abc1']) def test_register_5(self, test_input): """密码框6-16位""" self.register.fill_password(test_input) # 断言 expect(self.register.locator_password_tip2).to_be_visible() expect(self.register.locator_password_tip2).to_contain_text("密码6-16位字符")

def test_register_6(self): """密码框不能有特殊字符""" self.register.fill_password('abc123!') # 断言 expect(self.register.locator_password_tip3).to_be_visible() expect(self.register.locator_password_tip3).to_contain_text("不能有特殊字符,请用中英文数字下划线")

def test_login_link(self): """已有账号?点这登录""" expect(self.register.locator_login_link).to_have_attribute("href", "login.html") self.register.click_login_link() expect(self.register.page).to_have_title('网站登录')

def test_register_error(self): """测试注册正常流程, 已被注册过的账号""" self.register.fill_username('yoyo') self.register.fill_password('aa123456') self.register.click_register_button() # 断言提示语可见 expect(self.register.locator_register_error).to_be_visible()

def test_register_success(self): """测试注册正常流程, 注册成功""" # 生成随机账号 import uuid self.register.fill_username(str(uuid.uuid4())[:8]) self.register.fill_password('aa123456') self.register.click_register_button() # 断言提示语可见 expect(self.register.page).to_have_title('首页')



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3